package com.webwork.lims.warehouse.dataobject;

import com.webwork.lims.common.dataobject.CtrlerAndTime;

public class OutcomeOrder {
	
	/**
	 * 出库单号
	 */
	private String outcomeId;
	
	/**
	 * 出库运单
	 */
	private String orderId;
	
	/**
	 * 出库库存号
	 */
	private String sku;
	
	/**
	 * 出库数量
	 */
	private Integer amount;
	
	/**
	 * 出库状态
	 */
	private WarehouseStatus status = WarehouseStatus.NOSET;
	private Integer statusCode;
	
	/**
	 * 出库类型
	 */
	private OutcomeType type = OutcomeType.NOSET;
	private Integer typeCode;
	
	/**
	 * 创建人和时间
	 */
	private CtrlerAndTime create;
	
	/**
	 * 完成人和时间
	 */
	private CtrlerAndTime complete;
	
	public String getOutcomeId() {
		return outcomeId;
	}

	public void setOutcomeId(String outcomeId) {
		this.outcomeId = outcomeId;
	}

	public String getOrderId() {
		return orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	public String getSku() {
		return sku;
	}

	public void setSku(String sku) {
		this.sku = sku;
	}

	public Integer getAmount() {
		return amount;
	}

	public void setAmount(Integer amount) {
		this.amount = amount;
	}

	public WarehouseStatus getStatus() {
		return status;
	}

	public void setStatus(WarehouseStatus status) {
		this.status = status;
	}
	
	public void setStatus(Integer status) {
		this.status = WarehouseStatus.fromCode(status);
	}

	public Integer getStatusCode() {
		return statusCode;
	}

	public void setStatusCode(Integer statusCode) {
		this.statusCode = statusCode;
	}

	public OutcomeType getType() {
		return type;
	}

	public void setType(OutcomeType type) {
		this.type = type;
	}
	
	public void setType(Integer type) {
		this.type = OutcomeType.fromCode(type);
	}

	public Integer getTypeCode() {
		return typeCode;
	}

	public void setTypeCode(Integer typeCode) {
		this.typeCode = typeCode;
	}

	public CtrlerAndTime getCreate() {
		return create;
	}

	public void setCreate(CtrlerAndTime create) {
		this.create = create;
	}

	public CtrlerAndTime getComplete() {
		return complete;
	}

	public void setComplete(CtrlerAndTime complete) {
		this.complete = complete;
	}

}
